'\" t
.\"     Title: smbstatus
.\"    Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\"      Date: 11/25/2024
.\"    Manual: User Commands
.\"    Source: Samba 4.21.2
.\"  Language: English
.\"
.TH "SMBSTATUS" "1" "11/25/2024" "Samba 4\&.21\&.2" "User Commands"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
smbstatus \- report on current Samba connections
.SH "SYNOPSIS"
.HP \w'\ 'u
smbstatus [\-p|\-\-processes] [\-v|\-\-verbose] [\-L|\-\-locks] [\-S|\-\-shares] [\-N|\-\-notify] [\-u|\-\-user=STRING] [\-b|\-\-brief] [\-P|\-\-profile] [\-R|\-\-profile\-rates] [\-B|\-\-byterange] [\-n|\-\-numeric] [\-f|\-\-fast] [\-j|\-\-json] [\-\-resolve\-uids] [\-?|\-\-help] [\-\-usage] [\-d|\-\-debuglevel=DEBUGLEVEL] [\-\-debug\-stdout] [\-\-configfile=CONFIGFILE] [\-\-option=name=value] [\-l|\-\-log\-basename=LOGFILEBASE] [\-\-leak\-report] [\-\-leak\-report\-full]
.SH "DESCRIPTION"
.PP
This tool is part of the
\fBsamba\fR(7)
suite\&.
.PP
smbstatus
is a very simple program to list the current Samba connections\&.
.SH "OPTIONS"
.PP
\-P|\-\-profile
.RS 4
If samba has been compiled with the profiling option, print only the contents of the profiling shared memory area\&.
.RE
.PP
\-R|\-\-profile\-rates
.RS 4
If samba has been compiled with the profiling option, print the contents of the profiling shared memory area and the call rates\&.
.RE
.PP
\-b|\-\-brief
.RS 4
gives brief output\&.
.RE
.PP
\-v|\-\-verbose
.RS 4
gives verbose output\&.
.RE
.PP
\-L|\-\-locks
.RS 4
causes smbstatus to only list locks\&.
.RE
.PP
\-B|\-\-byterange
.RS 4
causes smbstatus to include byte range locks\&.
.RE
.PP
\-p|\-\-processes
.RS 4
print a list of
\fBsmbd\fR(8)
processes and exit\&. Useful for scripting\&.
.RE
.PP
\-S|\-\-shares
.RS 4
causes smbstatus to only list shares\&.
.RE
.PP
\-N|\-\-notify
.RS 4
causes smbstatus to display registered file notifications
.RE
.PP
\-f|\-\-fast
.RS 4
causes smbstatus to not check if the status data is valid by checking if the processes that the status data refer to all still exist\&. This speeds up execution on busy systems and clusters but might display stale data of processes that died without cleaning up properly\&.
.RE
.PP
\-u|\-\-user=<username>
.RS 4
selects information relevant to
\fIusername\fR
only\&.
.RE
.PP
\-n|\-\-numeric
.RS 4
causes smbstatus to display numeric UIDs and GIDs instead of resolving them to names\&.
.RE
.PP
\-j|\-\-json
.RS 4
Output more detailed information in JSON format instead of human readable\&. The output has the following format:
.sp
.if n \{\
.RS 4
.\}
.nf
{
  "timestamp": "2022\-04\-15T18:25:15\&.364891+0200",
  "version": "4\&.17\&.0pre1\-GIT\-a0f12b9c80b",
  "smb_conf": "/opt/samba/etc/smb\&.conf",
  "sessions": {
    "3639217376": {
      "session_id": "3639217376",
      "server_id": {
        "pid": "69650",
        "task_id": "0",
        "vnn": "4294967295",
        "unique_id": "10756714984493602300"
      },
      "uid": 1000,
      "gid": 1000,
      "username": "johndoe",
      "groupname": "johndoe",
      "remote_machine": "127\&.0\&.0\&.1",
      "hostname": "ipv4:127\&.0\&.0\&.1:59944",
      "session_dialect": "SMB3_11",
      "encryption": {
        "cipher": "",
        "degree": "none"
      },
      "signing": {
        "cipher": "AES\-128\-GMAC",
        "degree": "partial"
      }
    }
  },
  "tcons": {
    "3813255619": {
      "service": "sharename",
      "server_id": {
        "pid": "69650",
        "task_id": "0",
        "vnn": "4294967295",
        "unique_id": "10756714984493602300"
      },
      "tcon_id": "3813255619",
      "session_id": "3639217376",
      "machine": "127\&.0\&.0\&.1",
      "connected_at": "2022\-04\-15T17:30:37+0200",
      "encryption": {
        "cipher": "AES\-128\-GMAC",
        "degree": "full"
      },
      "signing": {
        "cipher": "",
        "degree": "none"
      }
    }
  },
  "open_files": {
    "/home/johndoe/testfolder/sample": {
      "service_path": "/home/johndoe/testfolder",
      "filename": "sample",
      "fileid": {
        "devid": 59,
        "inode": 11404245,
        "extid": 0
      },
      "num_pending_deletes": 0,
      "opens": {
        "56839/2": {
          "server_id": {
            "pid": "69650",
            "task_id": "0",
            "vnn": "4294967295",
            "unique_id": "10756714984493602300"
          },
          "uid": 1000,
          "share_file_id": 2,
          "sharemode": {
            "hex": "0x00000003",
            "NONE": false,
            "READ": true,
            "WRITE": true,
            "DELETE": false,
            "text": "RW"
          },
          "access_mask": {
            "hex": "0x00000003",
            "READ_DATA": true,
            "WRITE_DATA": true,
            "APPEND_DATA": false,
            "READ_EA": false,
            "WRITE_EA": false,
            "EXECUTE": false,
            "READ_ATTRIBUTES": false,
            "WRITE_ATTRIBUTES": false,
            "DELETE_CHILD": false,
            "DELETE": false,
            "READ_CONTROL": false,
            "WRITE_DAC": false,
            "SYNCHRONIZE": false,
            "ACCESS_SYSTEM_SECURITY": false,
            "text": "RW"
          },
          "caching": {
            "READ": false,
            "WRITE": false,
            "HANDLE": false,
            "hex": "0x00000000",
            "text": ""
          },
          "oplock": {},
          "lease": {},
          "opened_at": "2022\-04\-15T17:30:38+0200"
        }
      }
    }
  }
}
				
.fi
.if n \{\
.RE
.\}
.sp
If oplocks are used:
.sp
.if n \{\
.RS 4
.\}
.nf
          "oplock": {
            "EXCLUSIVE": false,
            "BATCH": false,
            "LEVEL_II": true,
            "LEASE": false,
            "text": "LEVEL_II"
          }
				
.fi
.if n \{\
.RE
.\}
.sp
If leases are used:
.sp
.if n \{\
.RS 4
.\}
.nf
          "lease": {
            "lease_key": "29316055\-f55c\-de10\-c813\-af7bf5a430bb",
            "hex": "0x00000005",
            "READ": true,
            "WRITE": true,
            "HANDLE": false,
            "text": "RW"
          }
			
.fi
.if n \{\
.RE
.\}
.sp
With byte\-range locks (\-B, \-\-byterange):
.sp
.if n \{\
.RS 4
.\}
.nf
  "byte_range_locks": {
    "/home/johndoe/testfolder/sample": {
      "fileid": {
        "devid": 59,
        "inode": 11404245,
        "extid": 0
      },
      "file_name": "sample",
      "share_path": "/home/johndoe/testfolder",
      "locks": [
        {
          "server_id": {
            "pid": "69650",
            "task_id": "0",
            "vnn": "4294967295",
            "unique_id": "10756714984493602300"
          },
          "type": "R",
          "flavour": "Posix",
          "start": 0,
          "size": 16
        }
      ]
    }
			
.fi
.if n \{\
.RE
.\}
.sp
With notifies (\-N, \-\-notify):
.sp
.if n \{\
.RS 4
.\}
.nf
  "notify": {
    "77247": {
      "server_id": {
        "pid": "69650",
        "task_id": "0",
        "vnn": "4294967295",
        "unique_id": "10756714984493602300"
      },
      "path": "/home/johndoe/testfolder/testdir",
      "filter": 4095,
      "subdir_filter": 4095,
      "creation_time": "1970\-01\-01T01:00:14\&.326582+01:00"
    }
  }
			
.fi
.if n \{\
.RE
.\}
.sp
For profiling (\-P, \-\-profile):
.sp
.if n \{\
.RS 4
.\}
.nf
{
  "timestamp": "2022\-04\-15T18:40:43\&.112216+0200",
  "version": "4\&.17\&.0pre1\-GIT\-a0f12b9c80b",
  "smb_conf": "/opt/samba/etc/smb\&.conf",
  "SMBD loop": {
    "connect": {
      "count": 2
    },
    "disconnect": {
      "count": 1
    },
    \&.\&.\&.
  },
  "System Calls": {
    "syscall_opendir": {
      "count": 0,
      "time": 0
    },
    \&.\&.\&.
  },
  "ACL Calls": {
    "get_nt_acl": {
      "count": 0,
      "time": 0
    },
    \&.\&.\&.
  },
  "Stat Cache": {
    "statcache_lookups": {
      "count": 2
    },
    \&.\&.\&.
  },
  "SMB Calls": {
    "SMBmkdir": {
      "count": 0,
      "time": 0
    },
    \&.\&.\&.
  },
  "Trans2 Calls": {
    "Trans2_open": {
      "count": 0,
      "time": 0
    },
    \&.\&.\&.
  },
  "NT Transact Calls": {
    "NT_transact_create": {
      "count": 0,
      "time": 0
    },
    \&.\&.\&.
  },
  "SMB2 Calls": {
    "smb2_negprot": {
      "count": 2,
      "time": 3060,
      "idle": 0,
      "inbytes": 452,
      "outbytes": 568
    },
    \&.\&.\&.
  }
}
			
.fi
.if n \{\
.RE
.\}
.sp
.RE
.PP
\-?|\-\-help
.RS 4
Print a summary of command line options\&.
.RE
.PP
\-\-usage
.RS 4
Display brief usage message\&.
.RE
.PP
\-d|\-\-debuglevel=DEBUGLEVEL
.RS 4
\fIlevel\fR
is an integer from 0 to 10\&. The default value if this parameter is not specified is 1 for client applications\&.
.sp
The higher this value, the more detail will be logged to the log files about the activities of the server\&. At level 0, only critical errors and serious warnings will be logged\&. Level 1 is a reasonable level for day\-to\-day running \- it generates a small amount of information about operations carried out\&.
.sp
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
\m[blue]\fBlog level\fR\m[]
parameter in the
/etc/samba/smb\&.conf
file\&.
.RE
.PP
\-\-debug\-stdout
.RS 4
This will redirect debug output to STDOUT\&. By default all clients are logging to STDERR\&.
.RE
.PP
\-\-configfile=<configuration file>
.RS 4
The file specified contains the configuration details required by the client\&. The information in this file can be general for client and server or only provide client specific like options such as
\m[blue]\fBclient smb encrypt\fR\m[]\&. See
/etc/samba/smb\&.conf
for more information\&. The default configuration file name is determined at compile time\&.
.RE
.PP
\-\-option=<name>=<value>
.RS 4
Set the
\fBsmb.conf\fR(5)
option "<name>" to value "<value>" from the command line\&. This overrides compiled\-in defaults and options read from the configuration file\&. If a name or a value includes a space, wrap whole \-\-option=name=value into quotes\&.
.RE
.PP
\-l|\-\-log\-basename=logdirectory
.RS 4
Base directory name for log/debug files\&. The extension
\fB"\&.progname"\fR
will be appended (e\&.g\&. log\&.smbclient, log\&.smbd, etc\&.\&.\&.)\&. The log file is never removed by the client\&.
.RE
.PP
\-\-leak\-report
.RS 4
Enable talloc leak reporting on exit\&.
.RE
.PP
\-\-leak\-report\-full
.RS 4
Enable full talloc leak reporting on exit\&.
.RE
.PP
\-V|\-\-version
.RS 4
Prints the program version number\&.
.RE
.SH "VERSION"
.PP
This man page is part of version 4\&.21\&.2 of the Samba suite\&.
.SH "SEE ALSO"
.PP
\fBsmbd\fR(8)
and
\fBsmb.conf\fR(5)\&.
.SH "AUTHOR"
.PP
The original Samba software and related utilities were created by Andrew Tridgell\&. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed\&.
